<?
setlocale(LC_ALL, 'es-ES');
$fecha = new DateTime();
include_once '../includes/config.php';
include_once '../includes/parcial.php';
//$cantDias = cal_days_in_month(CAL_GREGORIAN, $fecha->format("m"), $fecha->format("y"));
$gabineteServicios = new GabineteServicios();
$reservaServicios = new ReservaServicios();
$gabinetes = $gabineteServicios->listar();
?>
<script type="text/javascript">
  $(document).ready(function(){
    $(".bajar .imagenFlechaV").css("margin-top", $("#grilla").height() - $(".imagenFlechaV").height()*3);  
  });
</script> 
<?php
if (isset($_POST['fechaNuevo']))
{
  $fecha = new DateTime($_POST['fechaNuevo']);
  $fecha_aux = $fecha->format("Y") . "-" . $fecha->format("m") . "-" . $fecha->format("d");
} else
{
  $fecha = new DateTime();
  $fecha_aux = $fecha->format("Y") . "-" . $fecha->format("m") . "-" . $fecha->format("d");
}
?>
<div id="contenedorGrilla">

  <table id="grilla">
    <caption><span><?= $MESES[$fecha->format("m") - 1] . " " . $fecha->format("Y") ?></span>
      <div class="navHorizontal superior">
        <div class="volver"><img class="imagenFlecha" src="imagenes/flecha-izq.png" /></div>
        <div id="contenedorFechaGrilla"><input type="hidden" id="fechaGrilla"/></div>
        <div class="avanzar"><img class="imagenFlecha" src="imagenes/flecha.png" /></div>
      </div>
    </caption>
    <thead>
      <tr id="encabezado">
        <td id="titEncabezado"><div id="titFecha">Fecha</div><div id="titHora">Hora</div></td>
        <?
        for ($i = 0; $i < CANT_DIAS_GRILLA; $i++)
        {
          $fecha_ahora = $fecha->format("Y") . "-" . $fecha->format("m") . "-" . $fecha->format("d");
          $fecha_grilla = date("Y-m-d", strtotime("$fecha_ahora + $i days"));
          $f = new DateTime($fecha_grilla);
          ?>
          <td class="fechaGrilla"><?= $f->format("d") ?></td>  
        <? } ?>
      </tr>
    </thead>
    <tbody>
      <?
      for ($i = HORA_COMIENZO; $i < HORA_FIN; $i++)
      {
        ?>
        <tr class="<?
      echo $i;
      if ($i >= HORA_COMIENZO + CANT_HORAS_GRILLA)
        echo " escondidas";
        ?>">
          <td class="<?= $i ?> horarioGrilla"><?= $i ?>:00</td>
          <?
          for ($j = 0; $j < CANT_DIAS_GRILLA; $j++)
          {
            $fecha_ahora = $fecha->format("Y") . "-" . $fecha->format("m") . "-" . $fecha->format("d");
            $fecha_grilla = date("Y-m-d", strtotime("$fecha_ahora + $j days"));
            $f = new DateTime($fecha_grilla);
            ?>
            <td class="<?= $i ?> turno">
              <div>
                <?
                $horarioFecha = $f->format("Y") . "-" . $f->format("m") . "-" . $f->format("d");
                $horarioHora = $i . ":00:00";
                for ($k = 0; $k < count($gabinetes); $k++)
                {
                  $reservas = new ReservaDTO();
                  $reservas = $reservaServicios->buscarPorGabineteFecha($gabinetes[$k]->getId(), $horarioFecha, $horarioHora);
                  if (count($reservas) == 0)
                  {
                    ?>
                    <div class="gabineteGrillaLibre" id="<? echo $f->format("d") . "/" . $f->format("m") . "/" . $f->format("Y") . "-" . $i; ?>">  
                      <div style="float: left;">
                        <div class="nombreGrilla"></div>
                        <div class="infoGrilla"></div>
                      </div>
                      <div class="checkIn"></div>
                    </div>
                    <?
                  } else
                  {
                    ?>
                    <div class="gabineteGrillaOcupado" id="reserva_<?php echo $reservas[0]->getId(); ?>">  
                            <img class="imgAbrirObs" src="imagenes/observacionesGrilla1.png" alt="ver observaciones" data-idreserva="<?= $reservas[0]->getId() ?>"/> 
                             <div id="obs_<?php echo $reservas[0]->getId(); ?>" class="observacionesGrilla"><?= $reservas[0]->getObservaciones()?></div>
                      <div style="float: left;">
                        <div class="nombreGrilla"><?php
            if ($reservas[0]->getHabitacion() != null)
            {
              echo "Habitacion " . $reservas[0]->getHabitacion();
            } else
            {
              echo $reservas[0]->getNombreCompCliente();
            }
                    ?>
                         
                          
                        </div>
                        <div class="infoGrilla">
                          <? echo $reservas[0]->getTerapeuta()->getNombre(); ?> / <?php echo $reservas[0]->getTratamiento()->getNombre(); ?>
                        </div>
                      </div>
                      <div class="checkIn">
                      <!-- <img width="23" src="imagenes/check_user.png"/>-->
                        <img width="20" id="imgcheck_<?php echo $reservas[0]->getId(); ?>" src="<?php if ($reservas[0]->getEstado() == CHECKIN) echo 'imagenes/check_si.png'; else echo 'imagenes/check_no.png' ?>"/>
                      </div>
                    </div>
                    <?
                    if ($reservas[0]->getEstado() == RESERVADA)
                    {
                      ?>
                      <script type="text/javascript">
                        $("#reserva_<?php echo $reservas[0]->getId(); ?>").contextMenu("contextMenu3", 
                        {
                          bindings: {
                            'check': function(t) 
                            {
                              $.ajax(
                              {
                                type: "POST",
                                url: "checkIn.php",
                                data: {id: <?php echo $reservas[0]->getId(); ?>},
                                success: function(data){
                                  if (data=="1"){
                                    $("#imgcheck_<?php echo $reservas[0]->getId(); ?>").attr("src","imagenes/check_si.png");
                                    $("#reserva_<?php echo $reservas[0]->getId(); ?>").attr("data-checkedin", true);
                                    $.growlUI('Check In realizado con exito'); 
                                  }
                                  else{
                                    $.growlUI('No se pudo realizar el Check In'); 
                                  }
                                }
                              });
                            }
                          },
                          onShowMenu: function(e, menu) {
                            if ($("#reserva_<?php echo $reservas[0]->getId(); ?>").data("checkedin") == true) {

                              $('#check', menu).remove();

                            }

                            return menu;

                          }
                        });
                      </script>
                      <?
                    }
                  }
                }
                ?>
              </div>
            </td>  
          <? } ?>
        </tr>
      <? } ?>
    </tbody>
  </table>
  <div class="navVertical">
    <div class="subir"><img class="imagenFlechaV" src="imagenes/flechaArriba.png" /></div>
    <div class="bajar"><img class="imagenFlechaV" src="imagenes/flechaAbajo.png" /></div>
  </div>
  <div class="navHorizontal">
    <div class="volver"><img class="imagenFlecha" src="imagenes/flecha-izq.png" /></div>
    <div class="avanzar"><img class="imagenFlecha" src="imagenes/flecha.png" /></div>
  </div>
</div>
<script type="text/javascript">
  $(document).ready(function(){
    $(".observacionesGrilla").dialog({autoOpen: false, title: "Observaciones"});
    $(".imgAbrirObs").click(function(event){
       var idReserva = $(this).data("idreserva");
       $("#obs_"+idReserva).dialog("open");
       event.stopImmediatePropagation();
    });
    $.unblockUI();
    $(".avanzar img").click(
    function(){
      $.blockUI();
      $("#cuerpo").load("grilla.php",{fechaNuevo:'<?php echo date("Y-m-d", strtotime("$fecha_aux + " . CANT_DIAS_GRILLA . " days")); ?>'}); 
    }
  );
    $(".volver img").click(
    function(){
      $.blockUI();
      $("#cuerpo").load("grilla.php",{fechaNuevo:'<?php echo date("Y-m-d", strtotime("$fecha_aux - " . CANT_DIAS_GRILLA . " days")); ?>'}); 
    }
  );
    /**
     * Crear nueva reserva
     */
    $("#cuerpo").on("click", ".gabineteGrillaLibre", function(event){
      var datos=$(this).attr("id");
      $("#tope").height(185);
      $("#tope").html("");
      $.blockUI();
      $("#tope").load("nuevaReserva.php",{datos:datos}, function(){ $.unblockUI()}); 
      $("#tope").slideDown(1);
      $('html, body').animate({ scrollTop: 0 }, 0);
      $(".gabineteGrillaLibre").removeAttr("style");
      $(this).css({'background-color':'orange'});
      event.preventDefault();
    });
    /**
     * Mostrar detalles turno
     */
    $("#cuerpo").on("click", ".gabineteGrillaOcupado", function(event){
    //$(".gabineteGrillaOcupado").live("click", function(event){
      var datos=$(this).attr("id");
      $("#tope").height(185);
      var array = datos.split("_");
      $("#tope").html("");
      $("#tope").load("modificarReserva.php",{id:array[1]}); 
      $("#tope").slideDown(1);
      $('html, body').animate({ scrollTop: 0 }, 0);
      event.preventDefault();
    });
    $("#fechaGrilla").datepicker({
      showOn: "button",
      buttonImage: "imagenes/calendar.gif",
      buttonImageOnly: true, 
      dateFormat: "yy-mm-dd"
    });
    $("#fechaGrilla").change(function(){      
      $("#cuerpo").load("grilla.php",{fechaNuevo: $("#fechaGrilla").val()}); 
    });
  });
</script>